.#{$ns}ListMenu {
  background: var(--ListMenu-item-bg);
  min-width: px2rem(200px);
  border: var(--ListMenu-borderWidth) solid var(--ListMenu-bordrColor);
  border-radius: var(--ListMenu-borderRadius);

  &-groupLabel {
    font-size: var(--fontSizeXs);
    color: var(--text--muted-color);
    padding: calc(
        (
            var(--ListMenu-item-height) - var(--Form-input-lineHeight) *
              var(--Form-input-fontSize) - var(--gap-sm)
          ) / 2
      )
      0 0 calc(var(--Form-select-paddingX) - var(--gap-xs));
  }

  &-group:not(:first-child) > &-groupLabel {
    border-top: px2rem(1px) solid var(--ListMenu-divider-color);
  }

  &-item {
    display: flex;
    min-height: var(--ListMenu-item-height);
    color: var(--ListMenu-item-color);
    line-height: var(--Form-input-lineHeight);
    font-size: var(--Form-input-fontSize);
    cursor: pointer;
    padding: calc(
        (
            var(--ListMenu-item-height) - var(--Form-input-lineHeight) *
              var(--Form-input-fontSize)
          ) / 2
      )
      var(--Form-select-paddingX);

    &.is-active {
      color: var(--ListMenu-item--onActive-color);
      background: var(--ListMenu-item--onActive-bg);
    }

    // &:hover,
    &.is-highlight {
      color: var(--ListMenu-item--onHover-color);
      background: var(--ListMenu-item--onHover-bg);
    }

    &.is-disabled {
      color: var(--ListMenu-item--onDisabled-color);
      background: var(--ListMenu-item--onDisabled-bg);
    }
  }

  &-placeholder {
    display: block;
    min-height: var(--ListMenu-item-height);
    color: var(--text--muted-color);
    line-height: var(--Form-input-lineHeight);
    font-size: var(--Form-input-fontSize);
    cursor: pointer;
    padding: calc(
        (
            var(--ListMenu-item-height) - var(--Form-input-lineHeight) *
              var(--Form-input-fontSize)
          ) / 2
      )
      var(--Form-select-paddingX);
  }

  &.is-mobile {
    display: flex;
    flex-wrap: wrap;

    .#{$ns}ListMenu-item {
      width: calc((100vw - var(--ListMenu-item-mobile-margin) * 7) / 3);
      display: inline-flex;
      background: var(--ListMenu-item-mobile-bg);
      margin: var(--ListMenu-item-mobile-margin);

      &.is-active {
        background: var(--ListMenu-item-mobile-active-bg);
      }

      .#{$ns}ListMenu-itemLabel {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
      }
    }
  }
}

.#{$ns}ListMenu-add-wrap {
  display: flex;
  align-items: center;
  margin: var(--ListMenu-item-mobile-margin);
  text-align: left;

  .#{$ns}ResultBox {
    width: 100%;
  }

  input {
    width: 100%;
    padding: var(--Form-item-mobile-gap) 0;
    border-bottom: 1px solid var(--borderColor);
    border-radius: 0;
  }
}

.#{$ns}PopOver > .#{$ns}ListMenu {
  border-color: var(--listMenu--onActive-borderColor);
}
